package com.os;

import javax.sound.midi.Soundbank;

/**
 * @Author Matt
 * @Date 2022-09-02
 * @Desc:
 * @Version V1.0
 */
public class LambdaDemo5 {

    public static void main(String[] args) {
        //参数类型可以省略
        useAddable((x, y) -> {
            return x + y;
        });

        System.out.println("----------------------");
        //只有一个参数，小括号也可以省略
        useFlyable(s -> {
            System.out.println(s);
        });

        System.out.println("----------------------");
        //如果代码块快的语句只有一条，可以省略大括号和分号，有return时需要把return也去掉
        useFlyable(s -> {
            System.out.println(s);
        });

        System.out.println("----------------------");
        //如果代码块快的语句只有一条，可以省略大括号和分号，有return时需要把return也去掉
        useAddable((x, y) -> x + y);

    }

    private static void useFlyable(Flyable flyable){
        flyable.fly("天气真好，飞高高~");
    }

    private static void useAddable(Addable addable){
        int sum = addable.add(10, 20);
        System.out.println(sum);
    }
}
